import request from '@/config/axios'

// 软件信息 VO
export interface BaseInfoVO {
  id: number // 编号
  name: string // 软件名称
  description: string // 功能简介
  type: string // 软件类型
  author: string // 作者
  status: string // 软件状态
  remark: string // 备注
}

// 软件信息下拉列表项
export interface BaseInfoOptionVO {
  id: number // 编号
  name: string // 软件名称
}

// 软件信息 API
export const BaseInfoApi = {
  // 查询软件信息分页
  getBaseInfoPage: async (params: any) => {
    return await request.get({ url: `/compo/base-info/page`, params })
  },

  // 查询软件信息详情
  getBaseInfo: async (id: number) => {
    return await request.get({ url: `/compo/base-info/get?id=` + id })
  },

  // 获取所有正常状态的软件信息下拉列表
  listAllNormal: async () => {
    return await request.get<BaseInfoOptionVO[]>({ url: `/compo/base-info/list-all-normal` })
  },

  // 新增软件信息
  createBaseInfo: async (data: BaseInfoVO) => {
    return await request.post({ url: `/compo/base-info/create`, data })
  },

  // 修改软件信息
  updateBaseInfo: async (data: BaseInfoVO) => {
    return await request.put({ url: `/compo/base-info/update`, data })
  },

  // 删除软件信息
  deleteBaseInfo: async (id: number) => {
    return await request.delete({ url: `/compo/base-info/delete?id=` + id })
  },

  // 导出软件信息 Excel
  exportBaseInfo: async (params) => {
    return await request.download({ url: `/compo/base-info/export-excel`, params })
  }
}